home *** CD-ROM | disk | FTP | other *** search
/ EnigmA Amiga Run 1997 June / EnigmA AMIGA RUN 19 (1997)(G.R. Edizioni)(IT)[!][issue 1997-06][EAR-CD III].iso / for amiga / v1.2 / announce-1.2.13pl4.z / announce-1.2.13pl4
Text File  |  1997-04-23  |  16KB  |  321 lines

  1.  
  2. This announces the availability of version 1.2.13pl4 of Linux/68k. The
  3. source and a precompiled kernel are in /pub/linux/680x0 on
  4. tsx-11.mit.edu.
  5.  
  6. BEFORE RUNNING THIS KERNEL, CAREFULLY READ EVERY PART OF THIS
  7. ANNOUNCEMENT, AND PLAY CLOSE ATTENTION TO THE *EXT2FS* SECTION:
  8.  
  9. ******************************************************************
  10. ***                                                               ***
  11. *** The bitmap order of ext2 filesystems has changed again!!!  ***
  12. ***                                                               ***
  13. ******************************************************************
  14.  
  15. This kernel *cannot* be used with existing ext2fs filesystems from 0.9
  16. or 1.2.13 up to pl3 without "fixing" them. See *EXT2FS* below.
  17.  
  18. Changes against the last version:
  19.  
  20.  - Integrated patches 0.9.12 -> 0.9.13 (see announcement of 0.9.13)
  21.    This also includes the driver for the GVP IO-Extender board by
  22.    jds@kom.auc.dk and proper permissions for AFFS root dirs. (Tnx to
  23.    schwab@issan.informatik.uni-dortmund.de for the adaption to 1.2)
  24.  
  25.  - I did some minor changes to Makefiles for cross compiling, most in
  26.    arch/m68k/Makefile (setup), but also in net/Makefiles (it
  27.    referenced ar and ranlib directly, not by the make variables)
  28.    (myself)
  29.  
  30.  - Integrated the kswap patches for better swapping performance (these
  31.    are really for 1.3 versions, but work well in 1.2 and they're worth
  32.    it if there's a lot of swapping...) (Tnx to
  33.    schwab@issan.informatik.uni-dortmund.de)
  34.  
  35.  - Updated the Zorro Autoconfig stuff: moved all Zorro specific things
  36.    to zorro.h. Now there's also an API for the Zorro devices (cfr.
  37.    FindConfigDev()) which should make it easier for device driver
  38.    writers to find their boards. Now there are 32 parts for every
  39.    board, which can be marked configured independently, to support
  40.    boards with more than one part on it. Also added some new boards
  41.    and fixed IDs for A590 and A2091.
  42.    (Geert.Uytterhoeven@cs.kuleuven.ac.be)
  43.  
  44.  - New: Driver for both, parallel and serial parts of the Multiface
  45.    III Amiga board. On the serial side, only one port is fully
  46.    complete. See source for a describtion. (dorchain@mpi-sb.mpg.de)
  47.  
  48.  - Got rid of all the NTSC/PAL detections and the NTSC/PAL baud
  49.    divisor tables. Now everything is derived from the E-Clock
  50.    directly. Also added amiga_eclock (#define for the E-Clock value in
  51.    the bootinfo: 700 kHz), amiga_colorclock (3.5 MHz) and
  52.    amiga_masterclock (28 MHz), which are all derived from the E-Clock
  53.    value. (Geert.Uytterhoeven@cs.kuleuven.ac.be)
  54.  
  55.  - Updated CREDITS.m68k (jmayer@informatik.uni-kl.de,
  56.    Geert.Uytterhoeven@cs.kuleuven.ac.be and myself)
  57.  
  58.  - Updated Documentation/m68k/kernel-options.txt and copied some
  59.    interesting files from the PC-Linux Documentation directory
  60.    (myself)
  61.  
  62.  - Changed the bitmap order in ext2 filesystems again. There's one big
  63.    advantage in this: ext2 filesystems become totally portable by
  64.    this, i.e. every ext2 filesystem can be read and written on any
  65.    Linux platform. Ok, the m68k kernel is still missing the byte
  66.    swapping for multi-byte data, but this is a secondary problem. The
  67.    more important is, that there's a uniform bitmap order now across
  68.    all architectures. This common basis has been developed in a
  69.    discussion with Linux Torvalds, Ted Ts'o, David Miller (Sparc
  70.    port), Andreas Schwab and me.
  71.  
  72.    The internals: Now the ext2, minix, and kernel internal bitmap bit
  73.    orders may be different. For a little endian machine, all are the
  74.    same (little endian, of course :-). For the m68k as a big endian
  75.    machine, the ext2 bitmap operations implement the same order as
  76.    little endian machines do. By this, the ext2 bitmaps are portable.
  77.    (And there are no performance tradeoffs by this compared to older
  78.    1.2.13 versions.) The kernel internal bit operations still use big
  79.    endian order, to make set_bit() compatible with (1<<i) and to
  80.    ensure that set_bit(,0) gives a value of 1.
  81.  
  82.  - Fixed bugs in map_chunk() and kernel_map(), that caused pointer
  83.    tables not to be allocated under some circumstances. This was most
  84.    probably the reason for the ">32MB bug".
  85.    (schwab@issan.informatik.uni-dortmund.de)
  86.  
  87.  - Major revision of the Atari DMA sound driver. In brief: New kernel
  88.    option "atasound=" (see Documentation/m68k-kernel-options.txt); can
  89.    now play samples at almost all frequencies; takes more care when
  90.    expanding and if only small chunks of data are written; AFMT_QUERY
  91.    implemented and supports negative arguments to setSpeed and
  92.    setStereo to just report the current settings; fsync() implemented;
  93.    settings for /dev/dsp are now correctly remembered over device
  94.    open()s and close()s (itschere@TechFak.Uni-Bielefeld.DE, 1.2
  95.    adaptions by schwab@issan.informatik.uni-dortmund.de)
  96.  
  97.  - Fixed the bootstrap support for Magnum and BlowUp FX RAM (both
  98.    cookie structures were buggy :-( ) The new Atari bootstrap has
  99.    version 1.4. (myself together with the original authors)
  100.  
  101.  - New: Driver for Lance-based Ethernet boards (RieblCard on all bus
  102.    systems, PAM VME board (untested yet)) for the Atari. It works
  103.    easily like any Ethernet driver ("ifconfig eth0 ...") and you don't
  104.    need any special preparations. One exception from this is the old
  105.    RieblCard without a battery: For this, you must manually set the
  106.    Ethernet address by the command
  107.  
  108.       ifconfig eth0 hw ether 00:00:36:04:xx:xx
  109.  
  110.    *before* the board is opened, i.e. before the usual ifconfig and
  111.    other network setup stuff. (myself; tnx to Gunther Kemeny for
  112.    supplying the board!)
  113.  
  114.  - New: Driver for the Atari SLM laser printer. This currently works
  115.    with a statically allocated buffer of 1 MB, so configure this
  116.    driver only if you need it (it's also omitted in the precompiled
  117.    kernels on tsx-11). I also found a way to avoid the timing problems
  118.    we discussed earlier, this point is absolutely uncritical. The SLM
  119.    uses major 28 (like ACSI), but as character device. The minor is
  120.    the number of the printer. So you need the following devices:
  121.  
  122.       mknod /dev/slm0 c 28 0
  123.       mknod /dev/slm1 c 28 1
  124.       ...
  125.  
  126.    Reading the printer device (e.g. "cat /dev/slm0") gives a status
  127.    and mode report (similar to /proc files). On writing, the printer
  128.    expects a raw page bitmap of the current page size (which must be
  129.    queried before!). I've put my current printer spooling system onto
  130.    tsx-11.mit.edu in bin/lpd-SLM.tar.gz as an example. It also
  131.    includes a filter for preparing the page data from PostScript, and
  132.    a tool for querying/setting printer modes (not all implemented in
  133.    the kernel yet).
  134.  
  135.    The SLM driver is not really finished yet, but it works. What's
  136.    still needed: dynamic allocation of the printer buffer (to avoid
  137.    wasting 1 MB most of the time); more ioctls for getting/setting
  138.    printer modes, but I still need a bit more infos about the MODE
  139.    SENSE data of the SLM. (myself)
  140.  
  141.  - Corrected the frequencies of the Atari SCC: RTxC is really 3.672
  142.    MHz (not 3.6864 MHz), and PCLK is 8.0539763 MHz (instead of exact
  143.    8). This also caused some changes in the baud tables, specially for
  144.    low rates. (drpiper@cix.compulink.co.uk)
  145.  
  146.  - Fixed a bug in the CTS handling of the serial drivers, when the tty
  147.    is already hung up. (chrnadig@iiic.ethz.ch)
  148.  
  149.  - Handling of self-built-in CapsLock LEDs on the Atari
  150.    (Gerald_Haese@hro.maus.de)
  151.  
  152.  - Changed handling of FDGETPRM in both (Amiga&Atari) floppy drivers
  153.    to be compatible with PC Linux; this is necessary for the new
  154.    e2fsprogs. The fdformat utility must be recompiled due to this!
  155.    (schwab@issan.informatik.uni-dortmund.de)
  156.  
  157.  - If ROOT_DEV is a floppy and the kernel sees a "ramdisk=x"
  158.    parameter, the ramdisk contents are read from another disk (like PC
  159.    Linux does). This applies only if no ramdisk is specified by by
  160.    bootstrap. (schwab@issan.informatik.uni-dortmund.de)
  161.  
  162.  - One more update_screen() was needed in vc_screen.c.
  163.    (schwab@issan.informatik.uni-dortmund.de)
  164.  
  165.  - Some more functions defined as inline, like in 1.3.42
  166.    (schwab@issan.informatik.uni-dortmund.de)
  167.  
  168.  - I found the reason why the kernel sometimes died with "data write
  169.    fault at 0x800000xx": The zorro_find() function didn't test for
  170.    machtype == AMIGA, and if it was Atari, it interpreted some
  171.    uninitialized part of the bootinfo as the autoconf structures...
  172.    and eventually returned that there is an Amiga board of some type
  173.    :-) (myself)
  174.  
  175.  - Removed the test in the Atari SCSI driver for "reselection after
  176.    won arbitration?". It caused too much trouble... (myself)
  177.  
  178.  - Atari TT-High is now white on black again by default. The reason
  179.    that didn't work was the missing new 'clear_inv' parameter to
  180.    reset_terminal(). (myself)
  181.  
  182.  - I've ported the 'make xconfig' stuff from newer 1.3 kernel
  183.    versions, that allow kernel configuration under X11 (you need
  184.    Tcl/Tk for this). It worked nearly out-of-the-box, except one test
  185.    in tkgen.c (look for "roman"). I've also adapted the Configure
  186.    script and wrote some brief help texts for m68k. But still more
  187.    work needs to be done on this... Any volunteers? (myself)
  188.  
  189.  - I implemented /proc/interrupts by adding a m68k-specific
  190.    get_irq_list() function, that delegates part of its work to a
  191.    machine specific function. This also requires a device name given
  192.    in each call to add_isr(). I did this and the mach_get_irq_list for
  193.    the Amiga part, too, but there may be improvements necessary...
  194.    (myself)
  195.  
  196.  - Slight changes to the bitmap operations to give gcc more chances to
  197.    optimize. (schwab@issan.informatik.uni-dortmund.de)
  198.  
  199.  - Renamed wait_for_IRQ() and update_timeout() to acsi_wait_for_IRQ()
  200.    and scsi_update_timeout(), resp., to avoid the possibility of name
  201.    clashes, since these functions aren't static anymore.
  202.    (schwab@issan.informatik.uni-dortmund.de)
  203.  
  204.  - New IDE driver for both, Amiga and Atari. It is derived from the
  205.    1.2 PC-Linux IDE driver and should perform better than the old
  206.    driver. It also has all the code to support ATAPI CD-ROMs, but
  207.    Torsten has to check this for m68k first. Maybe that's ready in the
  208.    next release. (t_ebelin@informatik.uni-kl.de)
  209.  
  210.  - BOOTP/TFTP support in the Atari bootstrap for remote booting over
  211.    Ethernet. Since not many people are likely to use that, this
  212.    feature must be enabled manually in arch/m68k/boot/Makefile by
  213.    defining USE_BOOTP. Also the low-level Ethernet drivers have to
  214.    configured by hand, but for now there's only one... (the Lance
  215.    driver for RieblCard and PAM-VME). BOOTP/TFTP works by requesting
  216.    an IP address and a kernel image name from a boot server, and then
  217.    downloading the kernel from there. (myself)
  218.  
  219.  - On the Atari, the timer interrupt function now runs with all ints
  220.    except the timer int enabled. This is done by a wrapper function
  221.    that masks the timer int in the MFP and then does a sti(). Similar
  222.    should be possible for the Amiga. (myself)
  223.  
  224.  - Some minor cleanups in head.S. (myself)
  225.  
  226.  - In get_kpointer_table(), one pointer too much was reserved. head.S
  227.    only uses the first three slots. (myself)
  228.  
  229.  - Now SCSI on the Medusa should really work! The reason was that, on
  230.    the Medusa, the NCR5380 "read overruns" (described by Drew Eckhardt
  231.    for the PC) are reality, while they never occured on TTs and we had
  232.    already thrown away the code... After re-writing the overrun
  233.    handling code, also scatter-gather works now. But ---again--- one
  234.    problem is left: The SCSI-DMA rest data register seems to behave
  235.    different on the Medusa, so currently transfers that aren't a
  236.    multiple of 4 have to be avoided. We're investigating on this...
  237.    (floeck@wctc6.chemie.uni-wuppertal.de and me, also with some help
  238.    from Freddi Aschwanden)
  239.  
  240.  - Amiga and Atari consoles now use the same (IBM-encoded) fonts, the
  241.    ones from the Atari console. An IBM-Font is necessary for the block
  242.    graphics of the VT100 graphics mode. The font files itself have
  243.    been moved to arch/m68k/fonts. (dorchain@mpi-sb.mpg.de and me)
  244.  
  245.  - When formatting HD diks on an Atari, the gap before the first
  246.    sector was too small. (schwab@issan.informatik.uni-dortmund.de)
  247.  
  248.  - There is a problem that forced me to switch back to hardware EOI
  249.    mode on the Atari again: Interrupts from VME boards (e.g. a
  250.    RieblCard :-) can be level-triggered instead of edge-triggered
  251.    (like those from MFP and SCC). This implies that the IPL must not
  252.    be lowered for them, else an "endless interrupt loop" occurs (until
  253.    the int condition is turned off in the hardware, but the high-level
  254.    int code cannot handle this). Andreas Schab and I already made our
  255.    thoughts about that problem, but a bitfield for distinguishing both
  256.    types of interrupts also didn't cure the problem :-( Again, a
  257.    higher level interrupt can arrive before the int is turned off, and
  258.    then lower the IPL itself (for instance, SCSI, or the timer int
  259.    now). So, we'll stick with the hardware EOI mode for now, which
  260.    avoids all the trouble by not lowering the IPL.
  261.  
  262.  - Together with the above change, the symbol USE_SOFTWARE_EOI in
  263.    arch/m68k/atari/ataint.s has been renamed to ATARI_USE_SOFTWARE_EOI
  264.    and was made global in atariints.h. The SCC driver needs this to
  265.    know whether it should reset the SCC's highest IUS bit itself, or
  266.    let atari_process_int() do this. Other drivers may need it as well
  267.    in future. (myself)
  268.  
  269. Known problems that aren't fixed yet:
  270.  
  271.  - There is a strange bug in the memory management, that may cause the
  272.    machine to crash if you have between 24 MB (inclusive) and 32 MB
  273.    (exclusive) of RAM. (May happen only on '040s)
  274.  
  275.  - On the Atari Medusa, the contents of a ramdisk may be trashed by
  276.    the bootstrap if you have configured some other amount than exactly
  277.    8 MB of ST-RAM. If this happens: use 8 MB ST-RAM or throw out some
  278.    accessories/auto-folder proggies.
  279.  
  280. The precompiled kernel contains both, Amiga and Atari support, so it
  281. is very big. You propably want to compile your own kernel tailored to
  282. your personal needs. Note also that there have been some problems
  283. reported that such big kernels cannot be booted with Amiga Lilo.
  284.  
  285. There are also several new/modified utility packages on tsx-11:
  286.  
  287.  - v1.2/filesys-for-pl4.gz: Ramdisk (ext2) with new e2fsprogs for pl4;
  288.      this ramdisk is only intended for restucturing filesystems, not for
  289.      a "rescue disk"
  290.  - bin/atafdformat.tar.gz: Updates for new floppy size structures
  291.  - bin/SLMtools.tar.gz: A special filter for the SLM printer to cut
  292.      off the 75 pixel border, setSLM for setting printer modes, and an
  293.      example spooling system
  294.  
  295.  
  296. *EXT2FS*:
  297.  
  298.    The bit order in the inode and block bitmaps of an ext2 filesystem
  299.    has changed again (compared to 0.9.x versions of the kernel, or
  300.    1.2.13 versions up to pl3; see also the ANNOUNCE-* files for
  301.    these). With this new change, we prepare for ext2fs portability over
  302.    all platforms. In the near future, you'll be able to read an ext2
  303.    filesystem written on any Linux/* machine on any other one. This
  304.    should be worth the trouble of changing the filesystem structure
  305.    again :-) But it should be the last time...
  306.  
  307.    The effect of this change is that the inode and block bitmaps of
  308.    existing ext2fs filesystems *cannot* be used by this 1.2.13pl4
  309.    kernel. If you want to use existing filesystems, you must boot the
  310.    "filesys-for-pl4" ramdisk filesystem (in tsx-11's v1.2 directory),
  311.    and run the /sbin/e2fsck program on every ext2fs filesystem you
  312.    intend to use with the 1.2.13pl4 kernel. Note that after running
  313.    the new e2fsck on these filesystems, they cannot be used by 0.9.x
  314.    or 1.2.13plx (x <= 3) kernels unless you run the 0.9.x or 1.2.13pl3
  315.    e2fsck on them. If you wish to create a *new* ext2fs partition to
  316.    use with 1.2.13pl4, use the mke2fs on the new ramdisk filesystem.
  317.    (For those who already switched their filesystems to 1.2.13plx (x
  318.    <= 3): the same procedure as from 0.9... :-)
  319.  
  320. Roman
  321.